package com.huellas.negocio;

import java.util.Collection;

import com.huellas.bean.DoctorBean;
import com.huellas.bean.EstadoClienteBean;
import com.huellas.bean.RolBean;
import com.huellas.dao.DoctorDAO;
import com.huellas.excepcion.DAOExcepcion;

public class GestionDoctor {

	public void insertarUsuario(int CoUsuario, String NoUsuario, String ApPaterno, String ApMaterno, String Direccion, String Email, int Celular, String NoTipoUsuario, int CoRol, int CoEstadoCliente) throws DAOExcepcion{
		
		RolBean rolBean = new RolBean();
		rolBean.setCoRol(CoRol);
		
		EstadoClienteBean estadoClienteBean = new EstadoClienteBean();
		estadoClienteBean.setCoEstadoCliente(CoEstadoCliente);
		
		DoctorBean doctorBean = new DoctorBean();
		doctorBean.setCoUsuario(CoUsuario);
		doctorBean.setNoUsuario(NoUsuario);
		doctorBean.setApPaterno(ApPaterno);
		doctorBean.setApMaterno(ApMaterno);
		doctorBean.setDireccion(Direccion);
		doctorBean.setEmail(Email);
		doctorBean.setCelular(Celular);
		doctorBean.setNoTipoUsuario(NoTipoUsuario);
		doctorBean.setRolBean(rolBean);
		doctorBean.setEstadoClienteBean(estadoClienteBean);
		
		DoctorDAO doctorDAO = new DoctorDAO();
		doctorDAO.insertarUsuario(doctorBean);
	}
	
	public void insertarDoctor(int CoUsuario, String NoUsuario, String ApPaterno, String ApMaterno, String Direccion, String Email, int Celular, String NoTipoUsuario, int CoRol, int CoEstadoCliente, int CoColegioMedico) throws DAOExcepcion{
		
		DoctorBean doctorBean = new DoctorBean();
		doctorBean.setCoColegioMedico(CoColegioMedico);
		doctorBean.setCoUsuario(CoUsuario);
		
		this.insertarUsuario(CoUsuario, NoUsuario, ApPaterno, ApMaterno, Direccion, Email, Celular, NoTipoUsuario, CoRol, CoEstadoCliente);
		
		DoctorDAO doctorDAO = new DoctorDAO();
		doctorDAO.insertarDoctor(doctorBean);
	}
	
	public DoctorBean obtenerRegistroDoctor(int CoColegioMedico, String NoUsuario, String ApPaterno, String ApMaterno, String Email, int Celular, String NoTipoUsuario) throws DAOExcepcion{
		DoctorDAO doctorDAO = new DoctorDAO();
		return doctorDAO.obtenerRegistroDoctor(CoColegioMedico, NoUsuario, ApPaterno, ApMaterno, Email, Celular, NoTipoUsuario);
	}
	
	public boolean validarRegistroDoctor(int CoColegioMedico, String NoUsuario, String ApPaterno, String ApMaterno, String Email, int Celular, String NoTipoUsuario) throws DAOExcepcion{
		boolean validar = false;
		
		DoctorBean registroDoctor = this.obtenerRegistroDoctor(CoColegioMedico, NoUsuario, ApPaterno, ApMaterno, Email, Celular, NoTipoUsuario);
		
		if (CoColegioMedico == registroDoctor.getCoColegioMedico() && NoUsuario.equals(registroDoctor.getNoUsuario()) && ApPaterno.equals(registroDoctor.getApPaterno()) && ApMaterno.equals(registroDoctor.getApMaterno()) 
			&& Email.equals(registroDoctor.getEmail()) && Celular == registroDoctor.getCelular() && NoTipoUsuario.equals(registroDoctor.getNoTipoUsuario())){
			validar = false;
		}else{
			validar = true;
		}
		
		return validar;
	}
	
	public Collection<DoctorBean> buscarDoctor(String NoUsuario, String ApPaterno, String ApMaterno) throws DAOExcepcion{
		DoctorDAO doctorDAO = new DoctorDAO();
		return doctorDAO.buscarDoctor(NoUsuario, ApPaterno, ApMaterno);
	}
	
	public int obtenerCoDoctor(String NoDoctor) throws DAOExcepcion{
		int CoDoctor = 0;
		
		DoctorDAO doctorDAO = new DoctorDAO();
		CoDoctor = doctorDAO.obtenerCoDoctor(NoDoctor);
		
		return CoDoctor;
	}
}
